package com.csun.cmny.provider.service;

import com.csun.cmny.core.support.IService;
import com.csun.cmny.provider.model.domain.DmcCsunVersionFile;
import com.csun.cmny.provider.model.dto.version.CheckFileVersionDto;
import com.csun.cmny.provider.model.dto.version.CsunVersionQueryDto;
import com.csun.cmny.provider.model.dto.version.SetVersionDto;
import com.csun.cmny.provider.model.vo.csunversion.CsunVersionFileVo;

import java.util.List;

/**
 * @Auther: chisj chisj@foxmal.com
 * @Date: 2019-11-20 17:11
 * @Description:
 */
public interface DmcCsunVersionFileService extends IService<DmcCsunVersionFile> {

    /**
     * 给设备下发版本
     *
     * @param setVersionDto
     *
     * @return
     */
    Integer setVersion(SetVersionDto setVersionDto);

    /**
     * 下载版本
     *
     * @param dmcCsunVersionFile
     *
     * @return
     */
    DmcCsunVersionFile queryCsunVersionFile(DmcCsunVersionFile dmcCsunVersionFile);

    /**
     * query csun version list with page
     *
     * @param csunVersionQueryDto   the csun version query dto
     *
     * @return  the list
     */
    List<CsunVersionFileVo> queryCsunVersionListWithPage(CsunVersionQueryDto csunVersionQueryDto);

    /**
     * 校验版本编号是否唯一
     *
     * @param checkFileVersionDto   the check file version dto
     *
     * @return  the boolean
     *
     * true-版本号唯一 false-版本号不唯一
     */
    boolean checkFileVersion(CheckFileVersionDto checkFileVersionDto);
}
